<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Function wait_some</title>
<link rel="stylesheet" href="../../../doc/src/boostbook.css" type="text/css">
<meta name="generator" content="DocBook XSL Stylesheets V1.79.1">
<link rel="home" href="../index.html" title="The Boost C++ Libraries BoostBook Documentation Subset">
<link rel="up" href="../mpi/reference.html#doxygen.nonblocking_8hpp" title="Header &lt;boost/mpi/nonblocking.hpp&gt;">
<link rel="prev" href="nonblocking_8hpp_1a52991dc7c5962f06f1d84ae5e2290db5.html" title="Function test_all">
<link rel="next" href="nonblocking_8hpp_1af39668b5feac8c380a98daf3de04cb0a.html" title="Function test_some">
<meta name="viewport" content="width=device-width, initial-scale=1">
</head>
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
<table cellpadding="2" width="100%"><tr>
<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../boost.png"></td>
<td align="center"><a href="../../../index.html">Home</a></td>
<td align="center"><a href="../../../libs/libraries.htm">Libraries</a></td>
<td align="center"><a href="http://www.boost.org/users/people.html">People</a></td>
<td align="center"><a href="http://www.boost.org/users/faq.html">FAQ</a></td>
<td align="center"><a href="../../../more/index.htm">More</a></td>
</tr></table>
<hr>
<div class="spirit-nav">
<a accesskey="p" href="nonblocking_8hpp_1a52991dc7c5962f06f1d84ae5e2290db5.html"><img src="../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../mpi/reference.html#doxygen.nonblocking_8hpp"><img src="../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../index.html"><img src="../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="nonblocking_8hpp_1af39668b5feac8c380a98daf3de04cb0a.html"><img src="../../../doc/src/images/next.png" alt="Next"></a>
</div>
<div class="refentry">
<a name="doxygen.nonblocking_8hpp_1a23b6fb5d7e00189fa6854b62098cd13f"></a><div class="titlepage"></div>
<div class="refnamediv">
<h2><span class="refentrytitle">Function wait_some</span></h2>
<p>boost::mpi::wait_some — Wait until some non-blocking requests have completed. </p>
</div>
<h2 class="refsynopsisdiv-title">Synopsis</h2>
<div class="refsynopsisdiv"><pre class="synopsis"><span class="comment">// In header: &lt;<a class="link" href="../mpi/reference.html#doxygen.nonblocking_8hpp" title="Header &lt;boost/mpi/nonblocking.hpp&gt;">boost/mpi/nonblocking.hpp</a>&gt;

</span>
<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <a class="link" href="../BidirectionalIterator.html" title="Concept BidirectionalIterator">BidirectionalIterator</a><span class="special">,</span> <span class="keyword">typename</span> <a class="link" href="../OutputIterator.html" title="Concept OutputIterator">OutputIterator</a><span class="special">&gt;</span> 
  <span class="identifier">std</span><span class="special">::</span><span class="identifier">pair</span><span class="special">&lt;</span> <span class="identifier">OutputIterator</span><span class="special">,</span> <span class="identifier">BidirectionalIterator</span> <span class="special">&gt;</span> 
  <span class="identifier">wait_some</span><span class="special">(</span><span class="identifier">BidirectionalIterator</span> first<span class="special">,</span> <span class="identifier">BidirectionalIterator</span> last<span class="special">,</span> 
            <span class="identifier">OutputIterator</span> out<span class="special">)</span><span class="special">;</span>
<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <a class="link" href="../BidirectionalIterator.html" title="Concept BidirectionalIterator">BidirectionalIterator</a><span class="special">&gt;</span> 
  <span class="identifier">BidirectionalIterator</span> 
  <span class="identifier">wait_some</span><span class="special">(</span><span class="identifier">BidirectionalIterator</span> first<span class="special">,</span> <span class="identifier">BidirectionalIterator</span> last<span class="special">)</span><span class="special">;</span></pre></div>
<div class="refsect1">
<a name="id-1.3.24.7.17.8.4"></a><h2>Description</h2>
<p>This routine takes in a set of requests stored in the iterator range <code class="computeroutput"></code>[first,last) and waits until at least one of the requests has completed. It then completes all of the requests it can, partitioning the input sequence into pending requests followed by completed requests. If an output iterator is provided, <code class="computeroutput">status</code> objects will be emitted for each of the completed requests. This routine provides functionality equivalent to <code class="computeroutput">MPI_Waitsome</code>.</p>
<p>

</p>
<div class="variablelist"><table border="0" class="variablelist compact">
<colgroup>
<col align="left" valign="top">
<col>
</colgroup>
<tbody>
<tr>
<td><p><span class="term">Parameters:</span></p></td>
<td><div class="variablelist"><table border="0" class="variablelist compact">
<colgroup>
<col align="left" valign="top">
<col>
</colgroup>
<tbody>
<tr>
<td><p><span class="term"><code class="computeroutput">first</code></span></p></td>
<td><p>The iterator that denotes the beginning of the sequence of request objects.</p></td>
</tr>
<tr>
<td><p><span class="term"><code class="computeroutput">last</code></span></p></td>
<td><p>The iterator that denotes the end of the sequence of request objects. This may not be equal to <code class="computeroutput">first</code>.</p></td>
</tr>
<tr>
<td><p><span class="term"><code class="computeroutput">out</code></span></p></td>
<td><p>If provided, the <code class="computeroutput">status</code> objects corresponding to completed requests will be emitted through this output iterator.</p></td>
</tr>
</tbody>
</table></div></td>
</tr>
<tr>
<td><p><span class="term">Returns:</span></p></td>
<td><p>If the <code class="computeroutput">out</code> parameter was provided, a pair containing the output iterator <code class="computeroutput">out</code> after all of the <code class="computeroutput">status</code> objects have been written through it and an iterator referencing the first completed request. If no <code class="computeroutput">out</code> parameter was provided, only the iterator referencing the first completed request will be emitted. </p></td>
</tr>
</tbody>
</table></div>
</div>
</div>
<div class="copyright-footer">Copyright © 2005-2007 Douglas Gregor,
      Matthias Troyer, Trustees of Indiana University<p>
        Distributed under the Boost Software License, Version 1.0. (See accompanying
        file LICENSE_1_0.txt or copy at &lt;ulink url="http://www.boost.org/LICENSE_1_0.txt"&gt;
        http://www.boost.org/LICENSE_1_0.txt &lt;/ulink&gt;)
      </p>
</div>
<hr>
<div class="spirit-nav">
<a accesskey="p" href="nonblocking_8hpp_1a52991dc7c5962f06f1d84ae5e2290db5.html"><img src="../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../mpi/reference.html#doxygen.nonblocking_8hpp"><img src="../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../index.html"><img src="../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="nonblocking_8hpp_1af39668b5feac8c380a98daf3de04cb0a.html"><img src="../../../doc/src/images/next.png" alt="Next"></a>
</div>
</body>
</html>
